<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>函数</title>
</head>

<body>
    <!-- 
        回顾java中的方法:
        [修饰符列表] 返回值类型 方法名(形式参数列表){
            方法体;
        }
        例如: 
            public static int sum(int a,int b){ 
                return a + b; 
            }
        JavaScript当中的函数:
            函数定义的语法格式是什么？
                function 函数名(形式参数列表){
                    函数体;
                }
                例如: 
                function sum(a+b){
                    return a + b ;
                }

                    函数名：sum
                    形式参数列表是：a和b

            JS中的函数返回值类型是不需要指定的，因为可以返回任何类型的数据。没有限制

                函数必须调用才会执行

            关于JS的调试？
                首选方案是：alert(),在程序的某个位置先试用alert弹出某个变量的值，看看是否是你需要的。
                通过alert可以调试JS代码

                另外一种方案是：采用浏览器自带的调试插件，F12
                    F12这个插件中比较重要的面板：
                        控制台
                        查看器
                        网络
                        掌握以上三个面板！！！！！！

            在javascript当中,如果一个变量声明的时候没有使用var关键字的话,这个变量不管是在哪里声明的,
            都是全局变量。这种全局变量在声明的时候必须手动赋值,不能采用系统默认值。
     -->
    <script>
        function sum(x, y) {
            alert(x + ',' + y)
        }

        sum()
        sum(1)
        sum(1, 2)
        sum(1, 2, 3)
            //这一切都是因为js是一门弱类型语言
        sum('abc', false)

        // JS还有一种声明方式？
        // function mysum(a, b) {

        // }

        //效果相同
        mysum = function(a, b) {
            return a + b; //返回计算结果！
        }

        //调用函数
        var result = mysum(10, 20);
        alert(result)

        //定义一个函数
        function sayHello(username) {
            alert("欢迎" + username + "光临！")
        }
    </script>
    <input type="button" value="hello" onclick="sayHello('张三')">
</body>

</html>